package com.forum.service.forum;

import com.baomidou.mybatisplus.extension.service.IService;
import com.common.entity.ApiResult;
import com.forum.param.ForumUserPasswordParam;
import com.forum.param.ForumUserUpdateInfoParam;
import com.forum.param.LoginParam;
import com.forum.pojo.forum.ForumUser;

/**
 * @author Tsing
 */
public interface ForumUserService extends IService<ForumUser> {

    /**
     * 用户注册
     * @return ApiResult
     * @param param
     * **/
    ApiResult<String> register(LoginParam param);

    /**
     * 用户登录
     * @return ApiResult
     * @param param
     * **/
    ApiResult<?> login (LoginParam param);

    /**
     * 用户信息修改
     * @return ApiResult
     * @param forumUser
     * **/
    ApiResult<String> editUserInfo(ForumUserUpdateInfoParam forumUser);

    /**
     * 用户修改密码
     * @return ApiResult
     * @param passwordParam 密码参数
     * **/
    ApiResult<String> updateUserPassword(ForumUserPasswordParam passwordParam);

    /**
     * 获取当前用户的信息
     * @return
     */
    ApiResult<ForumUser> getCurrentUser();

    //TODO 用户修改密码待做 需要邮箱验证

}
